package request

// PageInfo 分页模型
// @Description 分页信息
type PageInfo struct {
	Page     int `json:"page" form:"page"`         // 页码
	PageSize int `json:"pageSize" form:"pageSize"` // 每页大小
}

// Login 登录模型
// @Description 登录信息
type Login struct {
	Username string `json:"username" binding:"required"`
	Password string `json:"password" binding:"required"`
}

// Register 用户注册模型
// @Description 用户注册信息
type Register struct {
	Username string `json:"username" binding:"required" example:"123"`
	Password string `json:"password" binding:"required" example:"123"`
	Email    string `json:"email" binding:"required" example:"123@123.com"`
	Phone    string `json:"phone" binding:"required" example:"13912344321"`
	Birthday string `json:"birthday"`
}

// CreatePostRequest 创建文章请求模型
// @Description 文章信息
type CreatePostRequest struct {
	Title   string `json:"title" binding:"required" example:"标题1"`
	Content string `json:"content" binding:"required" example:"内容1"`
}

// CreatePostRequest 更新文章请求模型
// @Description 文章信息
type UpdatePostRequest struct {
	Id      uint   `json:"id" binding:"required" example:"1"`
	Title   string `json:"title" example:"标题1"`
	Content string `json:"content" example:"内容1"`
}

// CreatePostRequest 分页查询文章列表请求模型
// @Description 查询文章条件
type ListPostRequest struct {
	PageInfo
	Title   string `json:"title"`
	Content string `json:"content"`
	UserId  uint
}

// CreatePostRequest 创建评论请求模型
// @Description 评论信息
type CreateCommentRequest struct {
	Content string `json:"content" binding:"required"`
	PostId  uint   `json:"postId" binding:"required"`
}

// CreatePostRequest 更新评论请求模型
// @Description 评论信息
type UpdateCommentRequest struct {
	Id      uint   `json:"id" binding:"required"`
	Content string `json:"content"`
}

// CreatePostRequest 分页查询评论列表请求模型
// @Description 查询评论条件
type ListCommentRequest struct {
	PageInfo
	Content string `json:"content"`
	UserId  uint
	PostId  uint
}
